home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / programming / oracle7 7.2 / INSTALL / WIN95.STP < prev    next >
Encoding:
Text File  |  1995-11-01  |  31.0 KB  |  637 lines

  1. /* Copyright (c) Oracle Corporation 1992.  All Rights Reserved */
  2.  
  3. /*****************************************************************************
  4.   NAME
  5.     win95.stp - Windows 95 V3 Installation Environment Initialization File
  6.           for V7 Oracle products
  7.  
  8.   DESCRIPTION
  9.     This script bootstraps the Windows environment for the installation
  10.     of Oracle V7 products. It is always read first by ORAINST for Windows.
  11.  
  12.   MODIFIED   MM/DD/YY REASON
  13.     ekhor    10/31/95 Took out language question for trial web release.
  14.     sagarwal 10/04/95 For customer name: check oius.res, then $ORACLE and 
  15.                   then RegsiteredOrganization in Microsoft section
  16.     sagarwal 10/04/95 Store COMPANY_NAME in the registry
  17.     sagarwal 09/29/95 Bug Fixes: 
  18.                       dos_file_system_type
  19.                       makedir_bad_tree
  20.                       permit_retry_operations
  21.     sagarwal 09/26/95 Extended the bad locations to set up Oracle home to
  22.                   include windows_directory() and 
  23.                   windows_system_directory()
  24.     sagarwal 09/26/95 Moved remind_list from win95.avf to win95.stp
  25.     zzerhoun 09/17/95 Made nt.stp compatible:
  26.               added makedir_content & makedir_help
  27.               added path releated NLS strings
  28.     sagarwal 09/13/95 Modified the language list from a single selection 
  29.               dialog to a pop-down list
  30.     sagarwal 09/12/95 Added PATH.VRF
  31.     sagarwal 09/12/95 Modified oracle_group_name to be "Oracle for Windows95"
  32.     sagarwal 09/12/95 Added win16_oracle_home
  33.     sagarwal 09/11/95 Prevent installation of windows95 products to Windows
  34.               3.1 home
  35.     sagarwal 07/11/95 Created from nt.stp
  36. *****************************************************************************/
  37. {
  38.   { ui_graphics("USRSTUS.BMP");}
  39.   ['default:
  40.     {ui_graphics("STARTUS.BMP"); }
  41.     ['default: continue();]
  42.   ]
  43.  
  44.   /* System root Drive */
  45.   SystemRoot = nt_system_root();
  46.   system_root_drive = first(explode(SystemRoot,":"));
  47.  
  48.   /* Note: Above is used in win95.stp and win95.avf. */
  49.   
  50.   permit_retry_operations = FALSE;
  51.  
  52.   product_label = nls("product_label","Oracle Installer");
  53.   
  54.   /* Let the installer know if this is a bootstrapping sequence. */
  55.   bootstrap = FALSE;
  56.  
  57.   /* Let the installer know that it is being run from distribution media. */
  58.   distribution = TRUE;
  59.  
  60.   /* Let the installer know to always overwrite by default */
  61.   overwrite_mode = 'ALWAYS;
  62.  
  63.   /* Be friendly. */
  64.   welcome = TRUE;
  65.  
  66.   ui_product(product_label); 
  67.  
  68.   /* Get NLS Language */
  69. /*  ui_action(nls("default_language","Looking for a Default Language...")); */
  70. /* no longer ask language question -eng */
  71.  
  72.   english = list("English","AMERICAN_AMERICA.WE8ISO8859P1");
  73.   brazilian_portuguese = list("Brazilian Portuguese",
  74.             "BRAZILIAN PORTUGUESE_BRAZIL.WE8ISO8859P1");
  75.   czech = list("Czech","CZECH_CZECH REPUBLIC.EE8MSWIN1250");
  76.   danish = list("Danish","DANISH_DENMARK.WE8ISO8859P1");
  77.   dutch = list("Dutch","DUTCH_THE NETHERLANDS.WE8ISO8859P1");
  78.   finnish = list("Finnish","FINNISH_FINLAND.WE8ISO8859P1");
  79.   french = list("French","FRENCH_FRANCE.WE8ISO8859P1");
  80.   german = list("German","GERMAN_GERMANY.WE8ISO8859P1");
  81.   greek = list("Greek","GREEK_GREECE.EL8MSWIN1253");
  82.   hungarian = list("Hungarian","HUNGARIAN_HUNGARY.EE8MSWIN1250");
  83.   italian = list("Italian","ITALIAN_ITALY.WE8ISO8859P1");
  84.   japanese = list("Japanese","JAPANESE_JAPAN.JA16SJIS");
  85.   korean = list("Korean","KOREAN_KOREA.KO16KSC5601");
  86.   norwegian = list("Norwegian","NORWEGIAN_NORWAY.WE8ISO8859P1");
  87.   polish = list("Polish","POLISH_POLAND.EE8MSWIN1250");
  88.   portuguese = list("Portuguese","PORTUGUESE_PORTUGAL.WE8ISO8859P1");
  89.   russian = list("Russian","RUSSIAN_CIS.CL8MSWIN1251");
  90.   spanish = list("Spanish","SPANISH_SPAIN.WE8ISO8859P1");
  91.   swedish = list("Swedish","SWEDISH_SWEDEN.WE8ISO8859P1");
  92.   tchinese = list("Traditional Chinese","TRADITIONAL CHINESE_TAIWAN.ZHT16BIG5");
  93.   turkish = list("Turkish","TURKISH_TURKEY.WE8ISO8859P9");
  94.  
  95.   language_label = nls("language_label","Language");
  96.   language_content = nls("language_content","Language");
  97.   lang_list = list(english,brazilian_portuguese,
  98.              czech,danish,dutch,finnish,french,german,
  99.              greek,hungarian,italian,japanese,korean,
  100.              norwegian,polish,portuguese,
  101.              russian,spanish,swedish,tchinese,turkish);
  102.  
  103.   language_list = list(first(english),
  104.              first(brazilian_portuguese),
  105.              first(czech),
  106.              first(danish),first(dutch),first(finnish),
  107.              first(french),first(german),first(greek),
  108.              first(hungarian),
  109.              first(italian),first(japanese),first(korean),
  110.              first(norwegian),first(polish),
  111.              first(portuguese),first(russian),
  112.              first(spanish),first(swedish),
  113.              first(tchinese),first(turkish));
  114.   {
  115.     {
  116.       language_prompt = nls("language_prompt","Please select the language in which you would like to run Oracle Products.");
  117.       language_warn = nls("language_warn","Products not yet supported in your selected language will default to English.");
  118.       language_help = nls("language_help","You are being asked to select the language you would like to use. The Oracle Installer will run in that language.%carriage_return%%carriage_return%Some products may not yet be supported in the language you have selected.  In this case the default will be English.%carriage_return%%carriage_return%If you change your language selection at a later time, already installed products will still use your previous selection, until you reinstall them with the new language.");
  119.  
  120.       language_exists_default = default_language(); 
  121.  
  122.       lng_list = lang_list; 
  123.       while(not(empty(lng_list))) 
  124.       {
  125.     if (language_exists_default == first(rest(first(lng_list)))) 
  126.       break(); 
  127.     else 
  128.       lng_list = rest(lng_list); 
  129.       }
  130.  
  131.       if (empty(lng_list)) 
  132.     signal('UNBOUND_ENVIRONMENT_VARIABLE); 
  133.  
  134.       language_default = first(first(lng_list));
  135.  
  136.       language_old_prompt = instantiate(nls("language_old_prompt","The previously selected language is %%language_default%%."));
  137.       language_prompt = "%language_prompt%  %language_warn%%carriage_return%%carriage_return%%language_old_prompt%";
  138.     }
  139.     [ 'UNBOUND_ENVIRONMENT_VARIABLE:
  140.       {
  141.     {
  142.       language_default = first(english);
  143.       language_new_prompt = nls("language_new_prompt","No previously selected language was found.");
  144.       language_prompt = "%language_prompt%  %language_warn%%carriage_return%%carriage_return%%language_new_prompt%";
  145.  
  146.       signal('no_smartstart);
  147.     }
  148.     [ 'no_smartstart, 'empty_list:
  149.       {
  150.         language_default = first(english);
  151.         language_prompt = nls("language_prompt","It was not possible to determine which language you normally run Oracle products in.%carriage_return%Please select the language you would like to use:");
  152.         language_help = nls("language_help","You are being asked to select the language you would like to use.  The Oracle Installer will run in that language. English text may appear if the Installer cannot locate a message it needs.%carriage_return%By default, the Oracle products you install will use the language you select as well.");
  153.       }
  154.     ]#;
  155.       }
  156.     ]#;
  157.  
  158.     if (welcome)
  159.     {
  160.       welcome_prompt = nls("welcome_prompt",
  161.                "Welcome to the Oracle Installer.");
  162.       language_prompt = "%welcome_prompt% %language_prompt%";
  163.     }
  164.  
  165.     welcome = FALSE;
  166.  
  167.     language_specifier = list('label,language_label,
  168.                   'popdown,language_list
  169.                   'default,language_default);
  170.  
  171.     nls_lang_not_set = FALSE;  /* default: oracle home exist -eng */    
  172.     nls_language = "English";  /* default to Enflish -eng */
  173. /*    nls_language = first(multiple_text_dialog(language_prompt,
  174.                           list(language_specifier),
  175.                           language_content,
  176.                           language_help));
  177. */
  178.     while(not(nls_language == first(first(lang_list))))
  179.       lang_list = rest(lang_list);
  180.  
  181.     nls_language = first(rest(first(lang_list)));
  182.   }
  183.   ['smart_start: continue();]#;
  184.     
  185.   set_default_language(nls_language);
  186.  
  187.   reopen_resource_file();
  188.  
  189.   remind_list = list(); remind_helps = list();
  190.   /* run a user script which will allow them to display license 
  191.      information after the language has been changed */
  192.   {
  193.     execute("user.lic");
  194.   }
  195.   [
  196.     'cancel: signal('cancel,"Installation terminated at user request");
  197.     'FILE_NOT_FOUND: continue();
  198.   ]
  199.  
  200.   /* Define NLS strings for makedir.vrf */
  201.   makedir_specify_drive = nls("makedir_specify_drive","The path that you have entered, '%%makedir_path_to_check%%', is not a valid path because it does not specify a drive.");
  202.   makedir_bad_drive = nls("makedir_bad_drive", "The path, '%%makedir_path_to_check%%', is not valid because the drive '%%makedir_drive%%:' does not exist.");
  203.   makedir_no_dir = nls("makedir_no_dir", "'%%makedir_path_to_check%%' does not specify a directory. Please specify a directory name in your path.");
  204.   makedir_invalid_path = nls("makedir_invalid_path", "'%%makedir_path_to_check%%' is not a valid path.");
  205.   makedir_absolute_path = nls("makedir_absolute_path", "'%%makedir_path_to_check%%' is not an absolute path.");
  206.   makedir_illegal_char = nls("makedir_illegal_char", "'%%makedir_path_to_check%%' is not a valid path because it contains the illegal character '%%makedir_bad_char%%'.");
  207.   makedir_name_too_long = nls("makedir_name_too_long","The directory, '%%makedir_name%%', of the path '%%makedir_path_to_check%%' is too long.");
  208.   makedir_illegal_name = nls("makedir_illegal_name","The directory, '%%makedir_name%%', of the path '%%makedir_path_to_check%%' is not a legal name.");
  209.   makedir_dir_not_accessible = nls("makedir_dir_not_accessible","The directory, '%%makedir_current_path%%', is not accessible.");
  210.   makedir_cant_create_dir = nls("makedir_cant_create_dir","The Installer could not create the directory '%%makedir_current_path%%' : %%makedir_signal%%");
  211.   makedir_long_basename = nls("makedir_long_basename","The directory, '%%makedir_name%%', of the path, '%%makedir_path_to_check%%', is not legal because the basename '%%makedir_base%%' contains more than 8 characters.");
  212.   makedir_long_extension = nls("makedir_long_extension","The directory, '%%makedir_name%%', of the path, '%%makedir_path_to_check%%', is not legal because the extension '%%makedir_ext%%' contains more than 3 characters.");
  213.   makedir_has_white_space = nls("makedir_has_white_space","The directory, '%%makedir_name%%', of the path, '%%makedir_path_to_check%%', contains a space or tab character. To avoid confusion, you should not enter a directory which does not contain any whitespace characters.");
  214.   makedir_content = nls("makedir_content","Directory Selection");
  215.   makedir_help = nls("makedir_help","Please Select a Directory");
  216.  
  217.  
  218.   check_environment = nls("check_environment",
  219.               "Checking the Environment...");
  220.   ui_action(check_environment);
  221.  
  222. /* Begin SIDDHARTHA
  223.   find_big_disk = nls("find_big_disk",
  224.               "Searching for most appropriate install location...");
  225.  
  226.   ui_action(find_big_disk);
  227. */
  228.  
  229.   /* Choose default drive */
  230.   default_drive = system_root_drive;
  231.   remote_drive = "";
  232.   remote_space = 0;   
  233.   local_drive = "";
  234.   local_space = 0;
  235.   {
  236.     drive_list = dos_mapped_drives();
  237.     subtract(drive_list,list("A","B"));
  238.            
  239.     while (not(empty(drive_list)))
  240.     {
  241.       drive = first(drive_list);
  242.       {
  243.         { space = free_space("%drive%:\"); }
  244.         ['default: signal('next_drive); ]
  245.         { type = dos_file_system_type("%drive%:"); }
  246.         ['OS_ERROR: signal('next_drive); ] 
  247.         if (type == 'REMOTE)
  248.         {
  249.        if (space > remote_space)
  250.       {
  251.         remote_drive = drive;
  252.         remote_space = space;
  253.       }           
  254.         }
  255.         else if (type == 'FAT)
  256.         {
  257.        if (space > local_space)
  258.       {
  259.         local_drive = drive;
  260.         local_space = space;
  261.       }           
  262.         }
  263.       }
  264.       ['next_drive: continue(); ]
  265.       drive_list = rest(drive_list);
  266.     }   
  267.     if (local_space != 0)
  268.       default_drive = local_drive;
  269.   }['default: continue();]
  270.   default_home = "%default_drive%:\ORAWIN95";
  271.  
  272.   customer_content = nls("customer_content","Company Name");
  273.   customer_prompt = nls("customer_prompt","Please enter the name of the company to which this Oracle product has been licensed:");
  274.   customer_help = nls("customer_help","You are being asked to enter the name of the company to which this copy of Oracle has been licensed. This information will be internally recorded for licensing purposes.");         
  275.  
  276.   customer_label = customer_content; 
  277.   { customer_default = customer_name(); }
  278.   [ 'UNKNOWN_CUSTOMER:
  279.   {
  280.     {
  281.       customer_default = translate("COMPANY_NAME", "$oracle");
  282.     }
  283.     ['DEFAULT:
  284.       {   
  285.         customer_default = win32_get_value("HKEY_LOCAL_MACHINE",
  286.                        "Software\Microsoft\Windows\CurrentVersion",
  287.                        "RegisteredOrganization");
  288.       }
  289.       ['DEFAULT: 
  290.         {
  291.           customer_default = "";
  292.           continue();
  293.         }
  294.       ]
  295.     ]
  296.   }
  297.   ]#;
  298.   customer_list = list('label, customer_label,
  299.                'default,customer_default);
  300.  
  301.   ui_action(nls("locate_home","Locating Oracle Home..."));
  302.  
  303.   found_good_home = FALSE;
  304.   {
  305.     {
  306.       oracle_home = v7_translate("ORACLE_HOME");
  307.       pathify(oracle_home);
  308.       if (not(exists(oracle_home)))
  309.     signal('UNBOUND_ENVIRONMENT_VARIABLE);
  310.       else
  311.     found_good_home = TRUE;
  312.     }
  313.     [
  314.       'OS_ERROR: signal('UNBOUND_ENVIRONMENT_VARIABLE);
  315.       'UNBOUND_VARIABLE: signal('UNBOUND_ENVIRONMENT_VARIABLE);
  316.     ]#;
  317.   }
  318.   [ 'UNBOUND_ENVIRONMENT_VARIABLE:
  319.     {
  320.       nls_lang_not_set = TRUE; /* oracle home does not exist, set NLS_LANG -eng */
  321.       oracle_home = default_home;
  322.       pathify(oracle_home);
  323.     }
  324.   ]#;
  325.  
  326.   {
  327.     directory_prompt = nls("directory_prompt",
  328.                "Where should Oracle products be installed?");
  329.     directory_add_prompt = "";
  330.  
  331.     if (found_good_home)
  332.     {
  333.       have_home_prompt = instantiate(nls("have_home_prompt","Note that Oracle for Windows 95 products are currently installed in '%%oracle_home%%'. Changing the location of Oracle Home will disable the products currently installed there."));
  334.       directory_add_prompt = "%directory_add_prompt%%carriage_return%%carriage_return%%have_home_prompt%";
  335.     }
  336.  
  337.     /* call makedir.vrf */
  338.     makedir_default_dir = oracle_home;
  339.     makedir_select_dir_prompt = "%directory_prompt%%directory_add_prompt%";
  340.     makedir_root_message = nls("root_directory_message", "'%%makedir_path_to_check%%' is a root directory. Oracle products cannot be installed to a root directory of a drive. Please choose a different directory.");
  341.     makedir_root_content = nls("root_directory_content","Top-Level Directory");
  342.     makedir_root_help = nls("makedir_root_help", "'%%makedir_path_to_check%%' is a root directory. Oracle products cannot be installed to a root directory of a drive. Please choose a directory such as %%makedir_path_to_check%%ORAOS2.");
  343.  
  344.     home_label = nls("home_label","Oracle Home");
  345.     home_default = oracle_home;
  346.     home_help = nls("home_help","You are being asked to enter the location where you would like to install Oracle products.");  
  347.     home_list = list('label, home_label,
  348.              'default,home_default
  349.              'browse);
  350.  
  351.     install_settings_content = nls("install_settings_content",
  352.                    "Oracle Installation Settings");
  353.     install_settings_help = nls("install_settings_help",
  354.                 "%customer_label%: %customer_help% %carriage_return%%carriage_return%%home_label%: %home_help%%directory_add_prompt%");
  355.     install_settings_prompt = nls("install_settings_prompt",
  356.                   "Please enter the following Oracle installation settings:");
  357.  
  358.     if (welcome)
  359.     {
  360.       welcome_prompt = nls("welcome_prompt",
  361.                "Welcome to the Oracle Installer.");
  362.       install_settings_prompt = "%welcome_prompt% %install_settings_prompt%";
  363.       welcome = FALSE;
  364.     }
  365.  
  366.     install_settings_choices = multiple_text_dialog(install_settings_prompt,
  367.                             list(customer_list,
  368.                              home_list),
  369.                             install_settings_content,
  370.                             install_settings_help);
  371.   }
  372.   ['smartstart: continue();]#;
  373.  
  374.   the_customer_name = first(install_settings_choices);
  375.   if (silent_mode)
  376.     /* customer name could have been picked from the registry */
  377.     if (the_customer_name == "")
  378.        the_customer_name = nls("unknown_customer","Unknown Customer");
  379.   else
  380.     while(the_customer_name == "")
  381.       the_customer_name = text_dialog(customer_prompt,"",
  382.                         customer_content,
  383.                       customer_help);
  384.  
  385.   makedir_path_to_check = first(rest(install_settings_choices));
  386.   makedir_skip_pass = TRUE;
  387.  
  388.   { save_customer_name(the_customer_name);}
  389.   [ 'WRITE_PROTECTED: continue(); 
  390.     'WRITE_ERROR: continue(); ]#;
  391.  
  392.   /* find the Windows 3.1 oracle home to prevent installation of
  393.      Windows 95 products to that home */
  394.   windows_dir = windows_directory();
  395.   if (directory_name(windows_dir) == windows_dir)
  396.     win_ini_dir = "%windows_dir%win.ini";
  397.   else
  398.     win_ini_dir = "%windows_dir%\win.ini";
  399.  
  400.   /* Cannot install Oracle products to the Windows or Windows System directory */  
  401.   windows_dir_message = nls("windows_dir_message", "The specified Oracle Home, '%%makedir_path_to_check%%, points to a location within the Windows directory.  It is not recommended to install products in the Windows directory.  Please select a different location for the Oracle Home.");
  402.   windows_dir_content = nls("windows_dir_content", "Installing to the Windows directory");
  403.   windows_dir_help = nls("windows_dir_help", "It is not recommended to install products within the Windows directory.  The selection that was made for the Windows 95 Oracle Home coincides with a location at or within the Windows directory.");
  404.   makedir_bad_tree_list = list(windows_dir);
  405.   makedir_bad_tree_message_list = list(windows_dir_message);
  406.   makedir_bad_tree_content_list = list(windows_dir_content);
  407.   makedir_bad_tree_help_list = list(windows_dir_help);
  408.  
  409.   {
  410.     windows_ora_config = translate("ora_config", win_ini_dir);
  411.     win16_oracle_home = translate("oracle_home", "%windows_ora_config%");
  412.     win16_oracle_home_message = nls("win16_oracle_home_message", "The specified Oracle Home, '%%makedir_path_to_check%%', points to a location within the 16-bit Windows Oracle Home, '%win16_oracle_home%'.  Windows95 Oracle Products cannot be installed in a 16-bit Windows Oracle home.  Please select a different location for the Oracle Home.");
  413.     win16_oracle_home_content = nls("win16_oracle_home_content", "Installing to 16-bit Windows Oracle Home");
  414.     win16_oracle_home_help = nls("win16_oracle_home_help", "Windows 16-bit products and Windows95 32-bit products cannot coexist in the same Oracle Home Location.  The selection that was made for the Windows 95 Oracle Home coincides with a location at or within a previously existing Windows 16-bit Oracle Home.");
  415.   add(makedir_bad_tree_list, win16_oracle_home);
  416.   add(makedir_bad_tree_message_list, win16_oracle_home_message);
  417.   add(makedir_bad_tree_content_list, win16_oracle_home_content);
  418.   add(makedir_bad_tree_help_list, win16_oracle_home_help);
  419.   }[ 'DEFAULT: continue(); ]
  420.  
  421.   directory = execute("makedir.vrf");
  422.   
  423.   /* Make sure the Oracle Home directories exist. */
  424.   {
  425.     {
  426.       subdirectory = "%directory%\BIN";
  427.       make_directory(subdirectory);
  428.  
  429.       subdirectory = "%directory%\DBS";
  430.       make_directory(subdirectory);
  431.  
  432.       subdirectory = "%directory%\ORAINST";
  433.       make_directory(subdirectory);
  434.  
  435.     }
  436.     [ 'WRITE_ERROR:
  437.     {
  438.       sub_write_error_prompt = nls("sub_write_error_prompt","It was not possible to create the directory '%%subdirectory%%'. This could have been caused by not having the write permissions needed to create the specified directory. Please correct the problem or choose another directory.");
  439.       information_dialog(instantiate(write_error_prompt));
  440.       signal('CLEANUP);
  441.     }
  442.       'FILE_NOT_FOUND:
  443.     {
  444.       sub_file_not_found_prompt = nls("sub_file_not_found_prompt","The directory, '%%subdirectory%%', is not valid. It is unclear why this is the case. Please correct the problem or choose another directory.");
  445.       information_dialog(instantiate(file_not_found_prompt));
  446.       signal('CLEANUP);
  447.     }
  448.       'OS_ERROR:
  449.     {
  450.       sub_os_error_prompt = nls("sub_os_error_prompt","The directory, '%%subdirectory%%', could not be created. This could have been caused because a file already exists by that name. Please correct the problem or choose another directory.");
  451.       information_dialog(instantiate(os_error_prompt));
  452.       signal('CLEANUP);
  453.     }
  454.     ]#;
  455.   }
  456.   [ 'CLEANUP:
  457.     {
  458.       { remove_directory("%directory%\ORAINST"); }
  459.       [ 'WRITE_ERROR: continue();
  460.     'OS_ERROR: continue();
  461.       ]#;
  462.  
  463.       { remove_directory("%directory%\DBS"); }
  464.       [ 'WRITE_ERROR: continue();
  465.     'OS_ERROR: continue(); 
  466.       ]#;
  467.  
  468.       { remove_directory("%directory%\BIN"); }
  469.       [ 'WRITE_ERROR: continue();
  470.     'OS_ERROR: continue(); 
  471.       ]#;
  472.     }
  473.   ]#;
  474.  
  475.   if (oracle_home != directory)
  476.     oracle_home = directory;
  477.  
  478.   /* Make sure the Oracle Home directories and the registration file exist. */
  479.   if (not(exists("%oracle_home%\orainst\win95.rgs")))
  480.     create_file("%oracle_home%\orainst\win95.rgs");
  481.  
  482.   oracle_group_name = nls("oracle_group_name", "Oracle for Windows 95");
  483.   modify("ORACLE_HOME",oracle_home,"$oracle");
  484.   modify("API","%oracle_home%\DBS","$oracle");
  485.   if (nls_lang_not_set)   /* set NLS_LANG here when appropriate -eng */
  486.     modify("NLS_LANG",nls_language,"$oracle");
  487.   modify("COMPANY_NAME",the_customer_name,"$oracle");
  488.   modify("ORACLE_GROUP_NAME",oracle_group_name,"$oracle");
  489.   ora_config = "$oracle";
  490.  
  491.   {
  492.     {
  493.       copy_file("%oracle_home%\orainst\orainst.log",
  494.         "%oracle_home%\orainst\orainst.olg");
  495.     } [ 'default: continue(); ]#;
  496.  
  497.     create_log("%ORACLE_HOME%\ORAINST\ORAINST.LOG",FALSE);
  498.   } [ 'default: continue(); ]#;
  499.   /* log the windows 95 env */
  500.   log_state();
  501.   win32_log_state();
  502.   {
  503.     ui_action(nls("installing_scripts",
  504.           "Installing Common Installer Functions..."));
  505.     inst_dir = "%oracle_home%\ORAINST";
  506.     backup_dir = "%inst_dir%\backup";
  507.     backup_marker = "%inst_dir%\backup.mk";
  508.     copy_list = list("WIN95.AVF", "WIN95.VRF", "WIN95.PVF",
  509.              "WIN95.INS", "WIN95.DEI", "WIN95.PIN",
  510.              "WIN95.SHD", "WIN95.RSP",
  511.              "PATH.VRF", "MAKEDIR.VRF");
  512.     /* save files to backup if not already backed up*/
  513.     if (not(exists(backup_marker)) && exists("%inst_dir%\WIN95.AVF"))
  514.       {
  515.     if (not(exists(backup_dir)))
  516.       make_directory(backup_dir);
  517.     a_list = copy_list;
  518.     while (not(empty(a_list)))
  519.       {
  520.         the_file = first(a_list);
  521.         a_list = rest(a_list);
  522.         {
  523.           copy_file("%inst_dir%\%the_file%", "%backup_dir%\");
  524.         } [ 'default: continue(); ]#;
  525.       }
  526.     /* indicate that all files are in backup dir and are valid */
  527.     create_file(backup_marker);
  528.     modify("",
  529.            nls("dont_touch", "Please do not remove this file or change its permissions."),
  530.            backup_marker);
  531.       }
  532.     a_list = copy_list;
  533.     while (not(empty(a_list)))
  534.       {
  535.     the_file = first(a_list);
  536.     a_list = rest(a_list);
  537.     copy_file(the_file, "%inst_dir%\");
  538.       }
  539.   }
  540.  
  541.   ui_action(nls("prepare_to_install","Preparing to Install..."));
  542.  
  543.   { execute("user.stp");}
  544.   ['FILE_NOT_FOUND:
  545.     {
  546.       install_type_custom = nls("install_type_custom","Custom Install");
  547.       install_type = install_type_custom;
  548.     }
  549.   ]#;
  550.  
  551.   identifying_boot_drive = nls("identifying_boot_drive",
  552.                            "Identifying the Boot Drive...");
  553.   boot_drive_prompt = nls("boot_drive_prompt","Please select the drive from which you boot your computer:");
  554.   boot_drive_content = nls("boot_drive_content","Boot Drive");
  555.   boot_drive_help = nls("boot_drive_help","You are being asked to identify the drive from which you boot your computer.");
  556.  
  557.   path_too_long_prompt = nls("path_too_long_prompt","The addition of %%path_to_add%% to the PATH will result in a search path length of %%len%%, exceeding the DOS limit of 127. You will have to correct this manually.");
  558.   path_too_long_content = nls("path_too_long_content","Path Too Long");
  559.   path_too_long_help = nls("path_too_long_help","The addition of %%path_to_add%% to the PATH will result in a search path length of %%len%%, exceeding the DOS limit of 127. You will have to correct this manually. One solution may be shorter directory names.");
  560.  
  561.   reinstall_prompt01 = nls("reinstall_prompt01","Would you like to update %%product_label%%, version %%installed_version%%, with the available release of %%product_label%%, version %%current_version%%?");
  562.  
  563.   reinstall_content01 = nls("reinstall_content01","Update");
  564.  
  565.   reinstall_help01 = nls("reinstall_help01","The currently installed version of %%product_label%%, %%installed_version%%, is out of date. The available version is %%current_version%%. It is recommended that you update %%product_label%% to the newer version, %%current_version%%. Choose 'Yes' to update %%product_label%% to %%current_version%%. Choose 'No' if you are sure you want to keep the installed version, %%installed_version%%, intact.");
  566.  
  567.   reinstall_prompt02 = nls("reinstall_prompt02","WARNING: Not installing the latest version of %%product_label%%, %%current_version%%, may cause other Oracle products to work improperly.");
  568.  
  569.   reinstall_content02 = nls("reinstall_content02","Necessary Update");
  570.  
  571.   reinstall_help02 = nls("reinstall_help02","You are in the process of installing Oracle products which depend on version %%current_version%% of %%product_label%%. It is therefore recommended that you update %%product_label%% to %%current_version%%. You have chosen not to do so so, which may cause certain Oracle products to work improperly.");
  572.  
  573.   reinstall_prompt03 = nls("reinstall_prompt03","WARNING: The currently installed version of %%product_label%%, %%installed_version%%, is up to date. Are you sure you want to install the old version, %%current_version%%?  Doing so may cause other Oracle products to work improperly.");
  574.  
  575.   reinstall_content03 = nls("reinstall_content03","Old Version");
  576.  
  577.   reinstall_help03 = nls("reinstall_help03","You are attempting to install an older version of %%product_label%%, %%current_version%%, although version %%installed_version%% is already installed. Installing an older version of %%product_label%% may cause other Oracle products to work improperly. Choose 'No' to leave the current version of %%product_label%%, %%installed_version%%, intact. Choose 'Yes' if you are sure you want to replace it with version %%current_version%%.");
  578.  
  579.   reinstall_prompt04 = nls("reinstall_prompt04","Version %%installed_version%% of %%product_label%% has already been installed and is up to date. Would you like to reinstall it?");
  580.  
  581.   reinstall_content04 = nls("reinstall_content04","Up To Date");
  582.  
  583.   reinstall_help04 = nls("reinstall_help04","Version %%installed_version%% of %%product_label%% has already been installed and is up to date. There is no need to reinstall %%product_label%% unless the installation has somehow become damaged. Choose 'No' to skip the reinstallation of %%product_label%%. Choose 'Yes' if you are sure you want to reinstall it.");
  584.  
  585.   deinstall_prompt01 = nls("deinstall_prompt01","WARNING: Other products are dependent on %%registry_label%%. Removing it may cause other products to work improperly. Are you sure you want to deinstall it?");
  586.  
  587.  
  588.   deinstall_content01 = nls("deinstall_content01","Dependencies");
  589.  
  590.   deinstall_help01 = nls("deinstall_help01","Other products are dependent on %%registry_label%%. Removing it may cause them to work improperly. It is therefore recommended that you do not remove %%registry_label%%. Choose 'No' to leave %%registry_label%% intact. Choose 'Yes' if you are sure you want to remove it.");
  591.  
  592.   deinstall_prompt02 = nls("deinstall_prompt02","It was not possible to find a value for the variable, '%%variable%%', in '%%ora_config%%'. It is therefore not possible to remove %%registry_label%%. Please restore the binding for '%%variable%%' in '%%ora_config%%' in order to remove %%registry_label%%.");
  593.  
  594.   deinstall_content02 = nls("deinstall_content02","Variables");
  595.  
  596.   deinstall_help02 = nls("deinstall_help02","It was not possible to find a value for the variable, '%%variable%%', in '%%ora_config%%'. '%%variable%%' is used to determine in what directory %%registry_label%% was installed. It is therefore not possible to remove %%registry_label%%. Please restore the binding for '%%variable%%' by adding a line that begins with '%%variable%%=' in '%%ora_config%%'.
  597.  
  598. If %%registry_label%% were installed in '%%oracle_home%%', you would add the line '%%variable%%=%%oracle_home%%' to correct the problem.
  599.  
  600. When you have corrected the problem, please try to remove %%registry_label%% again.");
  601.   unbound_message = nls("unbound_message","The versions of the products you are installing require a separate installation procedure. Please choose 'OK' to quit this installation, leave the disk labeled '%%product_label%% 1' in your drive, and then choose 'From'. When the %%product_label%% installation is complete, please resume installing the products you originally selected for installation.");
  602.   unbound_content = nls("unbound_content","Separate Installation Procedure");
  603.   unbound_help = nls("unbound_help","The product you are currently installing was created with a different version of %%product_label%%. Proceeding with the current installation may result in installation errors. To avoid these errors and to successfully complete your installation, please choose 'OK' to quit this installation, insert the disk labeled '%%product_label%% 1' in your drive, and choose 'From'. When that installation is complete, then install the other products you originally selected for install
  604. ation.");
  605.   instver_too_early = nls("instver_too_early","The version of the Installer currently running is %%installer_version%%. The installation you have chosen requires version %%required_version%% or later. Please run version %%required_version%% or later in order to perform this installation.");
  606.   version_string = nls("version_string","%%prodlab%% version %%ver%%");
  607.   cancel_prompt01 = nls("cancel_prompt01","Installation terminated at user request.");
  608.   registering_product = nls("registering_product", "Registering %%product_label%%...");
  609.  
  610. /* Copying nls strings */
  611.   create_dir_prompt = nls("create_dir_prompt","Creating %%dest_dir%%...");
  612.   copying_file = nls("copying_file","Copying %%file_to_copy%%...");
  613.  
  614.   reboot_prompt1 = nls("reboot_prompt1","Please reboot your computer after you exit the Installer in order for changes to the following file(s) to take effect:%carriage_return%%carriage_return%");
  615.   reboot_prompt2 = nls("reboot_prompt2","Please reboot your computer after you exit the Installer.");
  616.   reboot_content = nls("reboot_content","Reboot Needed");
  617.   reboot_help = nls("reboot_help","The product(s) you have just installed may not function correctly until you reboot.");
  618.   remind_content = nls("remind_content","Installation Notes");
  619.  
  620.   ui_setting_up = nls("ui_setting_up", "Setting up...");
  621.   ui_analyzing_dependencies = nls("ui_analyzing_dependencies", "Analyzing Dependencies...");
  622.   ui_installing = nls("ui_installing", "Installing...");
  623.   ui_deinstalling = nls("ui_deinstalling", "Removing...");
  624.   ui_cancelling = nls("ui_cancelling", "Cancelling...");
  625.   ui_configuring = nls("ui_configuring","Configuring...");
  626.  
  627.   { ui_graphics(); }['default: continue();]
  628.  
  629.   problem_reboot = FALSE; autoexec_reboot = FALSE;
  630.  
  631.   permit_retry_operations = FALSE;
  632. }
  633.  
  634.  
  635.  
  636.  
  637.